home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / T-TPUG Old Monthly Disks / (c)ts.d64 / monopole.c (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  25KB  |  696 lines

  1. 100 REM MONOPOLE CBM-64
  2. 125 REM COPYRIGHT (C) 1982 BY
  3. 126 REM TIM BORION & SAL OEPER-8/12/82
  4. 130 PRINT"[147]":POKE53280,0:POKE53281,0:CLR:GOSUB1590
  5. 140 PG$="  PURPLE, LT. BLUE, MAROON, ORANGE,       RED, YELLOW, GREEN, DK. BLUE"
  6. 150 DIMPN$(42),D(42,1),CH$(16),CC$(16),P(42,9),PT$(42),C$(42),PS(42),H(42),MG(42)
  7. 160 DIM P$(2),PL(2),O(2),JT(2),M(2),CJ(2)
  8. 170 GOSUB320:INPUT"DO YOU WANT AUCTION RULE (Y OR N)";Q$:IFLEFT$(Q$,1)="Y"THENAF=1
  9. 180 INPUT"WANT FREE PARKING JACKPOT OPTION ";Q$:IFLEFT$(Q$,1)="Y"THENPF=1:FP=500
  10. 190 M(1)=1500:M(2)=1500:PL(1)=1:PL(2)=1:DV=2
  11. 200 CD$="":CR$=""
  12. 210 ZQ=RND(-TI):X1=8:Y1=10:X2=23:Y2=10:RX=6:RY=18:TN=832:TT=886
  13. 220 E$="                  [146]":RM$="HIT  'R' OR 'T'[146]"
  14. 230 PRINT"[147][159]     PLEASE WAIT WHILE I SET UP."
  15. 240 FORI=1TO4:P(6+((I-1)*10),8)=100:NEXT:P(13,8)=75:P(29,8)=75
  16. 250 CH=INT(RND(1)*16)+1:CC=INT(RND(1)*16)+1
  17. 260 FORI=1TO41:FORJ=0TO1:READD(I,J):NEXT:NEXT
  18. 270 P$(1)="   PLAYER 1[146]":P$(2)="   PLAYER 2[146]"
  19. 280 FORI=1TO41:READPN$(I):NEXT:FORI=1TO41:READPT$(I):IFPT$(I)<>"P"THEN300
  20. 290 READC$(I):FORJ=1TO9:READP(I,J):NEXTJ
  21. 300 NEXTI
  22. 310 FORI=1TO16:READCH$(I):NEXT:FORI=1TO16:READCC$(I):NEXT:GOTO390
  23. 320 PRINT"[154] [170][191]  [191][146][180][170][183][183][183][180][170][191]   [180][170][183][183][183][180][170][183][183][208][170][183][183][183][180][170]    [207][183]"
  24. 322 PRINT" [170] [191][191][146] [180][170]   [180][170] [191]  [180][170]   [180][170][175][175][186][170]   [180][170]    [204]"
  25. 324 PRINT" [170]    [180][170]   [180][170]  [191] [180][170]   [180][170]   [170]   [180][170]    [207]"
  26. 330 PRINT" [170]    [180][170][175][175][175][180][170]   [191][180][170][175][175][175][180][170]   [170][175][175][175][180][170][175][175][175] [204][175]"
  27. 350 PRINTTAB(19);"BY"
  28. 355 PRINT"        TIM BORION AND SAL OEPER"
  29. 360 PRINT"HIT 'R' TO ROLL DICE AND 'T' FOR        TRANSACTION MENU."
  30. 370 PRINT" '0' CAN BE USED TO RETURN FROM MOST     SUBROUTINES"
  31. 380 PRINT:PRINT"DEVELOPED PROPERTIES MAY NOT BE TRADED.":PRINT:RETURN
  32. 390 POKE54277,79:POKE54284,79:POKE54291,79
  33. 392 POKE54278,248:POKE54286,248:POKE54292,248
  34. 394 POKE54276,33:POKE54288,33:POKE54290,33
  35. 396 G(1)=54272:G(2)=54273:G(3)=54279:G(4)=54280:G(5)=54286:G(6)=54287
  36. 398 FORI=1TO6:POKEG(I),0:NEXT
  37. 399 POKE54296,15:IFPEEK(832)<>160THENGOSUB6370
  38. 400 GOSUB1320:FORPK=1TO2:POKED(1,PK-1),48+PK:O(PK)=D(1,PK-1):PT=PK:NEXT:GOSUB6470
  39. 410 GOSUB1620:IFR1=R2THEN410
  40. 420 PT=(R1>R2)+2
  41. 430 POKED(PL(1),0),49:POKED(PL(2),1),50
  42. 440 PT$=STR$(PT)
  43. 450 MS$="PLAYER"+PT$+" STARTS[146]"
  44. 460 X=RX:Y=RY:Z$=MS$:GOSUB1570:FORDE=1TO1500:NEXT:Z$=E$:GOSUB1570:GOTO680
  45. 470 DV=2:MF=0:JB=0
  46. 480 IFPL(PT)=41THEN590
  47. 490 JT(PT)=0
  48. 500 GOSUB1620:DF=1
  49. 510 IFDB=3THENSYSTN:GOSUB3150:SYSTT:GOSUB6470:GOTO620
  50. 520 FORM=1TODR:PL(PT)=PL(PT)+1
  51. 530 POKEO(PT),160:IFPL(PT)>40THENPL(PT)=PL(PT)-40:SYSTN:GOSUB1700:SYSTT
  52. 540 POKED(PL(PT),PT-1),48+PT
  53. 550 O(PT)=D(PL(PT),PT-1)
  54. 560 FORT=1TO50STEP6+PT:FORI=1TO6:POKEG(I),T:NEXT:NEXT
  55. 580 FORI=1TO6:POKEG(I),0:NEXT:NEXTM
  56. 590 POKED(PL(PT),PT-1),48+PT:GOSUB6470
  57. 600 SYSTN:GOSUB1770:SYSTT:GOSUB6470:IFM(PT)<0THENGOSUB6200:SYSTT
  58. 610 IFPL(PT)=11THENPOKED(41,PT-1),160:POKED(11,PT-1),48+PT
  59. 620 IFJBTHENJB=0:POKEO(PT),160:O(PT)=D(PL(PT),PT-1):GOTO520
  60. 630 IFMFTHENMF=0:POKEO(PT),160:O(PT)=D(PL(PT),PT-1):GOTO590
  61. 640 IFJETHENJE=0:POKEO(PT),160:O(PT)=D(PL(PT),PT-1):GOTO680
  62. 650 IFJFTHENJF=0:POKED(PL(PT),PT-1),48+PT:POKEO(PT),160:O(PT)=D(PL(PT),PT-1)
  63. 660 IFDBTHEN680
  64. 670 PT=3-PT
  65. 680 Z$=P$(PT):X=RX:Y=RY-1:GOSUB1570
  66. 690 Z$=RM$:X=RX:Y=RY:GOSUB1570
  67. 700 GETBC$:IFBC$<>""THEN700
  68. 710 GETA$:IFA$=""THEN710
  69. 720 IFA$="T"THENSYSTN:GOSUB4080:SYSTT:GOSUB6470:GOTO680
  70. 730 Z$=E$:X=RX:Y=RY:GOSUB1570
  71. 740 GOTO470
  72. 750 DATA1978,1938,1974,1973,1931,1930,1968,1967,1925,1924,1922,1921
  73. 760 DATA1959,1958,1956,1955,1953,1952,1950,1949,1944,1904
  74. 770 DATA1824,1825,1744,1745,1664,1665,1584,1585,1505,1506,1424,1425
  75. 780 DATA1346,1347,1264,1265,1184,1185,1104,1105
  76. 790 DATA1029,1030,1032,1033,1035,1036,1038,1039,1081,1082,1044,1045
  77. 800 DATA1047,1048,1130,1131,1053,1054,1096,1097
  78. 810 DATA1217,1218,1297,1298,1377,1378,1457,1458,1536,1537,1617,1618
  79. 820 DATA1697,1698,1777,1778,1857,1858,1906,1907
  80. 830 DATA">GO<[155]","[155]MEDITERRANEAN AVE.[155]","[158]COMMUNITY CHEST[155]","[155]BALTIC AVE.[155]"
  81. 835 DATA"[154]INCOME TAX[155]"
  82. 840 DATA"[152]READING R.R.[155]","[159]ORIENTAL AVE.[155]","[150]CHANCE[155]","[159]VERMONT AVE.[155]"
  83. 845 DATA"[159]CONNECTICUT AVE.[155]"
  84. 850 DATA"[150]JUST VISITING[155]","[156]ST.CHARLES PLACE[155]","[153]ELECTRIC COMPANY[155]","[156]STATES AVE.[155]"
  85. 860 DATA"[156]VIRGINIA AVE.[155]","[152]PENNSYLVANIA R.R.[155]","[129]ST. JAMES PLACE[155]"
  86. 865 DATA"[158]COMMUNITY CHEST[155]"
  87. 870 DATA"[129]TENNESSEE AVE.[155]","[129]NEW YORK AVE.[155]","[149]FREE PARKING[155]","KENTUCKY AVE.[155]"
  88. 880 DATA"[150]CHANCE[155]","INDIANA AVE.[155]","ILLINOIS AVE.[155]","[152]B & O  R.R.[155]"
  89. 885 DATA"[158]ATLANTIC AVE.[155]"
  90. 890 DATA"[158]VENTNOR AVE.[155]","[153]WATER WORKS[155]","[158]MARVIN GARDENS[155]","[150]GO[155] [154]TO[155] JAIL[155]"
  91. 895 DATA"PACIFIC AVE.[155]"
  92. 900 DATA"N. CAROLINA AVE.[155]","[158]COMMUNITY CHEST[155]","PENNSYLVANIA AVE.[155]"
  93. 905 DATA"[152]SHORT LINE[155]"
  94. 910 DATA"[150]CHANCE[155]","PARK PLACE[155]","[154]LUXURY TAX[155]","BOARDWALK[155]","[150]IN JAIL[155]"
  95. 920 DATAGO,P,PURPLE,60,2,10,30,90,160,250,30,50,CC,P,PURPLE,60,4,20,60,180,320
  96. 930 DATA450,30,50,IT,RR,P,LT. BLUE,100,6,30,90,270,400,550,50,50,CH,P,LT. BLUE
  97. 940 DATA 100,6,30,90,270,400,550,50,50,P,LT. BLUE,120,8,40,100,300,450,600,60,50
  98. 950 DATAJV,P,MAROON,140,10,50,150,450,625,750,70,100,U,P,MAROON,140,10,50,150,450
  99. 960 DATA625,750,70,100,P,MAROON,160,12,60,180,500,700,900,80,100,RR
  100. 970 DATAP,ORANGE,180,14,70,200,550,750,950,90,100,CC,P,ORANGE
  101. 980 DATA 180,14,70,200,550,750,950,90,100
  102. 990 DATAP,ORANGE,200,16,80,220,600,800,1000,100,100,FP,P,RED
  103. 1000 DATA 220,18,90,250,700,875
  104. 1010 DATA1050,110,150,CH,P,RED,220,18,90,250,700,875,1050,110,150,P,RED,240
  105. 1020 DATA 20,100,300
  106. 1030 DATA750,925,1100,120,150,RR,P,YELLOW,260,22,110,330,800,975,1150,130,150
  107. 1040 DATA P,YELLOW,260
  108. 1050 DATA22,110,330,800,975,1150,130,150,U,P,YELLOW,280,24,120,360,850,1025,1200
  109. 1060 DATA 140
  110. 1070 DATA150,GTJ,P,GREEN,300,26,130,390,900,1100,1275,150,200,P,GREEN
  111. 1080 DATA 300,26,130,390,900
  112. 1090 DATA1100,1275,150,200,CC,P,GREEN,320,28,150,450,1000,1200,1400
  113. 1100 DATA 160,200,RR,CH
  114. 1110 DATAP,DK. BLUE,350,35,175,500,1100,1300,1500,175,200,LT,P,DK. BLUE
  115. 1120 DATA 400,50,200,600,1400
  116. 1130 DATA1700,2000,200,200,IJ
  117. 1140 DATA PAY POOR TAX  $15,GO DIRECTLY TO JAIL,ADVANCE TO GO(COLLECT $200)
  118. 1150 DATA YOUR BUILDING AND LOAN MATURES            COLLECT $150
  119. 1160 DATA ADVANCE TOKEN TO NEAREST R.R.           $ PAY OWNER TWICE RENT
  120. 1170 DATAADVANCE TO ILLINOIS AVE.,BANK PAYS YOU DIVIDEND OF $50
  121. 1180 DATAGET OUT OF JAIL FREE,PAY EACH PLAYER $50,ADVANCE TO ST. CHARLES PLACE
  122. 1190 DATATAKE A RIDE ON THE READING,GO BACK THREE SPACES,ADVANCE TO BOARDWALK
  123. 1200 DATAMAKE GENERAL REPAIRS  $25 FOR EACH HOUSE$100 FOR EACH HOTEL
  124. 1210 DATA ADVANCE TOKEN TO NEAREST R.R.           $ PAY OWNER TWICE RENT
  125. 1220 DATA ADVANCE TOKEN TO NEAREST UTILITY        ROLL DICE & PAY 10*# SHOWN
  126. 1230 DATA GET OUT OF JAIL FREE,GO TO JAIL,ADVANCE TO GO(COLLECT $200)
  127. 1240 DATA FROM SALE OF STOCK YOU GET $45,COLLECT $50 FROM EVERY PLAYER
  128. 1250 DATA RECEIVE FOR SERVICES $25,PAY SCHOOL TAX OF $150,TAX REFUND COLLECT $20
  129. 1260 DATA ASSESSED FOR REPAIRS  $40 PER HOUSE     $115 PER HOTEL
  130. 1270 DATA YOU HAVE WON SECOND PRIZE IN A BEAUTY   CONTEST COLLECT $10
  131. 1280 DATA YOU INHERIT $100,XMAS FUND MATURES COLLECT $100,PAY HOSPITAL $100
  132. 1290 DATA BANK ERROR  IN YOUR FAVOR COLLECT $200,DOCTORS FEE PAY $50
  133. 1300 DATA LIFE INSURANCE MATURES COLLECT $100
  134. 1310 GOTO6360
  135. 1320 PRINT"[147][149]   [160][155][165][160][160][165][160][160][165][160][160][165][160][160][152][191][191][191][155][165][160][160][165]  [165][153]WW[155][165][160][160][150][165]GTJ[146]"
  136. 1330 PRINT"[149][160]FP[160][155][165][160][160][165][150]?[155][160][165][160][160][165][160][160][152][165][160][160][155][165][160][160][165][160] [165][153][176][177][155][165][160][160][154][165]   [146]"
  137. 1340 PRINT"[149]   [160]   [155][165][160][160] [160][160][165]  [152]B&O[158][165]  [165][160][160][155][165][160][160][158] [160][160][165][197][215] [155][146]"
  138. 1350 PRINT"[163][163][163][129] [155][207][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163] [155][163][163][163][146]"
  139. 1360 PRINT"   [129] [155][165]  [206][205]                       [155][160]  [146]"
  140. 1370 PRINT"[163][163][163][129][163][155][165] [158][206]  [155][205] 1-                  [163][155][163][163][163][146]"
  141. 1380 PRINT"   [129] [155][165][206][158]C C[155][206]                      [155]   [146]"
  142. 1390 PRINT"[163][163][163][163][165][205][158]  [206][155]  2-                  [207][163][163][163][146]"
  143. 1400 PRINT"[158]CC[155]  [165] [205][206]                       [158]CC[155]  [146]"
  144. 1410 PRINT"[163][163][163][129] [155][165]   [164][164][164]            [164][164][164]      [155][163][163][163][146]"
  145. 1420 PRINT"   [129] [155][165]  [167]   [155][165]          [167]   [155][165]     [155]   [146]"
  146. 1430 PRINT"[152][191]PR[191][155][165]  [167]   [155][165] MONOPOLE[155] [167]   [155][165]   [167][152][191]SL[191][146]"
  147. 1440 PRINT"[191]  [191][155][165]  [167]   [155][165]  CBM-64[155]  [167]   [155][165]   [167][152][191]  [191][155][146]"
  148. 1450 PRINT"[163][163][163][156] [155][165]   [163][163][163]            [163][163][163]     [207][163][163][163][146]"
  149. 1460 PRINT"   [156] [155][165]                          [165][150]?[155]  [146]"
  150. 1470 PRINT"[163][163][163][156][163][155][165]                      [206][205]   [155][163][163][163][146]"
  151. 1480 PRINT"   [156] [155][165]                     [150][206]  [155][205]  [155]   [146]"
  152. 1490 PRINT"[163][153]EC[155][163][165]                    [206][150]???[155][206] [154]TAX[155][163][146]"
  153. 1500 PRINT"    [165]                    [205][150]  [206][155]  [165]   [146]"
  154. 1510 PRINT"[163][163][163][156] [155][165]                     [205][206]    [155][163][163][163][146]"
  155. 1520 PRINT"   [156] [155][165]                           [155]   [146]"
  156. 1530 PRINT"[150][163][155][207][163][163][159]   [165]  [155][207][163][163][159]   [152][207]RR[155][207][163][163][146]   [207][163][163][146]   [207][163][163][163][146]"
  157. 1540 PRINT"[150] [155][165]  [165]  [165]  [165][150]?[155][160][165][160][160][152][165][160][160][155][165][160][160][165][160][160][165]  [165]  [165]GO [146]"
  158. 1550 PRINT"[150] [163][163][163][155][165]  [165]  [165]  [165]  [152][191][191][191][154]TAX[155][165]  [165][158]CC[155][165]  [165]_[192] [146]"
  159. 1560 RETURN
  160. 1570 PRINT"[155]";LEFT$(CR$,X);LEFT$(CD$,Y);Z$;""
  161. 1580 RETURN
  162. 1590 DC$(1)="   [157][157][157] [209] [157][157][157]   [146]":DC$(2)="  [209][157][157][157]   [157][157][157][209]  [146]"
  163. 1600 DC$(3)="[209]  [157][157][157] [209] [157][157][157]  [209][146]":DC$(4)="[209] [209][157][157][157]   [157][157][157][209] [209][146]"
  164. 1610 DC$(5)="[209] [209][157][157][157] [209] [157][157][157][209] [209][146]":DC$(6)="[209] [209][157][157][157][209] [209][157][157][157][209] [209][146]":RETURN
  165. 1620 CT=0
  166. 1630 R1=INT(RND(1)*6)+1:R2=INT(RND(1)*6)+1:DR=R1+R2
  167. 1635 FORI=1TO6:POKEG(I),DR*10:NEXT
  168. 1640 PRINT"";LEFT$(CR$,X1);LEFT$(CD$,Y1);DC$(R1)
  169. 1650 PRINT"";LEFT$(CR$,X2);LEFT$(CD$,Y2);DC$(R2)
  170. 1655 FORI=1TO6:POKEG(I),0:NEXT
  171. 1660 CT=CT+1:IFCT<7THENFORDELAY=1TO75:NEXT:GOTO1630
  172. 1670 IFR1=R2THENDB=DB+1:GOTO1690
  173. 1680 DB=0
  174. 1690 RETURN
  175. 1700 PRINT"[147]":PRINT
  176. 1710 PRINT" COLLECT $200 AS YOU PASS  [172][162][172][187][157][157][157][157][157][188][190][188][190][146]"
  177. 1720 M(PT)=M(PT)+200:PRINT:PRINT:PRINT
  178. 1730 PRINT"HIT ANY KEY TO CONTINUE[146]"
  179. 1740 GETW$:IFW$<>""THEN1740
  180. 1750 GETK$:IFK$=""THEN1750
  181. 1760 RETURN
  182. 1770 POKE198,0:PT$=PT$(PL(PT))
  183. 1780 IFPT$="P"THEN1900
  184. 1790 IFPT$="RR"THEN2380
  185. 1800 IFPT$="GO"THENRETURN
  186. 1810 IFPT$="U"THEN2700
  187. 1820 IFPT$="FP"THEN3010
  188. 1830 IFPT$="JV"THENRETURN
  189. 1840 IFPT$="GTJ"THEN3150
  190. 1850 IFPT$="IT"THEN3210
  191. 1860 IFPT$="LT"THEN3190
  192. 1870 IFPT$="CC"THEN3230
  193. 1880 IFPT$="CH"THEN3470
  194. 1890 IFPT$="IJ"THEN3880
  195. 1900 PRINT"[147]";TAB(15);"TITLE DEED"
  196. 1910 IFGFTHEN1950
  197. 1920 PRINT" PLAYER"PT
  198. 1930 PO=3-PT
  199. 1940 PL=PL(PT):P7=PT
  200. 1950 PRINTTAB(20-(LEN(PN$(PL))-1)/2)"";PN$(PL)"[146]"
  201. 1955 PRINTLEFT$(PN$(PL),1):QR=PEEK(646):POKE53280,QR:PRINT"[145][145]"
  202. 1960 PRINT
  203. 1970 PRINT"                 RENT $";P(PL,2)
  204. 1980 PRINT"           WITH 1 HOUSE  $";P(PL,3)
  205. 1990 PRINT"           WITH 2 HOUSES  ";P(PL,4)
  206. 2000 PRINT"           WITH 3 HOUSES  ";P(PL,5)
  207. 2010 PRINT"           WITH 4 HOUSES  ";P(PL,6)
  208. 2020 PRINT"           WITH HOTEL  $";P(PL,7)
  209. 2030 PRINT
  210. 2040 PRINT"           MORTAGE VALUE  $";P(PL,8)
  211. 2050 PRINT"          HOUSES COST $";P(PL,9);"EACH"
  212. 2060 PRINT"      HOTELS, $";P(PL,9);". PLUS 4 HOUSES"
  213. 2070 IFGFTHENPRINT:PRINT:GOSUB1730:POKE53280,0:RETURN
  214. 2080 PRINT:FORI=1TO41:IFC$(PL)=C$(I)ANDI<>PLTHENGOSUB2100
  215. 2090 NEXT:GOTO2120
  216. 2100 IFPS(I)THENPRINT" "PN$(I)"  OWNED BY PLAYER #"PS(I):RETURN
  217. 2110 PRINT" "PN$(I)" STILL FOR SALE.":RETURN
  218. 2120 PRINT
  219. 2130 IFMG(PL)=1THENPRINT" MORTAGED FOR $"P(PL,8)
  220. 2140 PRINT" COST   $";P(PL,1)
  221. 2150 IFPS(PL)=0THEN2200
  222. 2160 PRINT" OWNED[146] BY PLAYER"PS(PL):IFH(PL)THENPRINT"WITH";
  223. 2170 IFH(PL)<5THENPRINTH(PL)"HOUSES."
  224. 2180 IFH(PL)=5THENPRINT" A HOTEL"
  225. 2190 GOTO2250
  226. 2200 PRINT" YOU HAVE $";M(P7)
  227. 2210 PRINT" DO YOU WISH TO BUY THIS PROPERTY";:INPUT"  [191][157][157][157]";A$:A$=LEFT$(A$,1)
  228. 2220 IFA$="N"THEN2310
  229. 2230 IFA$<>"Y"THENPRINT"[145][145]":GOTO2210
  230. 2240 PRINT" OK YOU BOUGHT ";PN$(PL)"":M(P7)=M(P7)-P(PL,1):PS(PL)=PT:GOTO2300
  231. 2250 OW=P(PL,H(PL)+2):IFPS(PL)=PTTHEN2300
  232. 2260 IFMG(PL)THEN2300
  233. 2270 P5=PO:P6=PS(PL):GOSUB2320:IFOATHENIFH(PL)=0THENOW=OW*2
  234. 2280 M(PT)=M(PT)-OW:M(PS(PL))=M(PS(PL))+OW:PRINT" YOU OWE $";OW
  235. 2290 M(PS(PL))=M(PS(PL))+OW
  236. 2300 GOSUB1730:POKE53280,0:RETURN
  237. 2310 GOSUB6040:GOTO2300
  238. 2320 MG=0:OA=0:PC=0:FORI=1TO41:IFC$(PL)=C$(I)ANDPS(I)=P5THENPC=PC+1:IFMG(I)THENMG=MG
  239. 2330 NEXT
  240. 2340 IFPC=2ANDC$(PL)="PURPLE"THENOA=1:RETURN
  241. 2350 IFPC=2ANDC$(PL)="DK. BLUE"THENOA=1:RETURN
  242. 2360 IFPC=3THENOA=1:RETURN
  243. 2370 RETURN
  244. 2380 PRINT"[147]":PL=PL(PT)
  245. 2390 PRINT"PLAYER"PT
  246. 2400 PRINT"                   [150][216][152] [172][146]"
  247. 2410 PRINT"                      [146]"
  248. 2420 PRINT"                  [206][149][215] [215]"
  249. 2430 PRINT
  250. 2440 PRINTTAB(20-LEN(PN$(PL))/2)"";PN$(PL)"[146]"
  251. 2442 POKE54276,129:POKE54288,17:POKE54290,17
  252. 2443 KO=129:FORT=1TO2:FORI=1TO6:POKEG(I),KO:NEXT:FORDL=1TO400:NEXT
  253. 2444 FORI=1TO6:POKEG(I),0:NEXT:FORDL=1TO60:NEXT:NEXT
  254. 2445 POKE54276,33:POKE54288,33:POKE54290,33     
  255. 2450 PRINT:PRINT"RENT                     $25"
  256. 2460 PRINT"IF 2 R.R.'S ARE OWNED     50"
  257. 2470 PRINT"IF 3 R.R.'S ARE OWNED    100"
  258. 2480 PRINT"IF 4 R.R.'S ARE OWNED    200"
  259. 2490 PRINT
  260. 2500 PRINT"MORTAGE VALUE            $100"
  261. 2510 PRINT:IFMG(PL)=1THENPRINT"MORTAGED FOR $100":GOTO2690
  262. 2520 PRINT"COST   $200"
  263. 2530 PRINT:FORI=1TO41:IFPT$(I)="RR"THENGOSUB2550
  264. 2540 NEXT:GOTO2570
  265. 2550 IFPS(I)THENPRINTPN$(I)" OWNED BY PLAYER #";PS(I):RETURN
  266. 2560 PRINTPN$(I)" STILL FOR SALE.":RETURN
  267. 2570 IFPS(PL)THENPRINT"OWNED[146] BY PLAYER#";PS(PL):GOTO2650
  268. 2580 PRINT"YOU HAVE $"M(PT)
  269. 2590 PRINT"DO YOU WISH TO BUY IT";:INPUT"  [191][157][157][157]";B$:B$=LEFT$(B$,1)
  270. 2600 IFB$="N"THENGOSUB6040:GOTO2690
  271. 2610 IFB$<>"Y"THENPRINT"[145][145]":GOTO2590
  272. 2620 M(PT)=M(PT)-200:PS(PL)=PT
  273. 2630 PRINT"OK YOU BOUGHT IT"
  274. 2640 GOTO2690
  275. 2650 OW=0:O7=0
  276. 2660 IFPS(PL)=PTTHEN2690
  277. 2670 OW=25:FORI=6TO36STEP10:IFPT$(I)="RR"ANDPS(I)=PS(PL)THENOW=OW*2
  278. 2680 NEXT:OW=OW/DV:PRINT"YOU OWE $";OW:M(PT)=M(PT)-OW:M(PS(PL))=M(PS(PL))+OW
  279. 2690 GOSUB1730:RETURN
  280. 2700 PRINT"[147]"
  281. 2710 PRINT"PLAYER"PT
  282. 2720 PRINT"            [158][206][163][205]     [152][215][209][215]    "
  283. 2730 PRINT"            [158][205][150]^[158][206]    [152][171][192][177][192][192][192][201] "
  284. 2740 PRINT"             [158][165][165]    [152][171][192][192][192][192][201][200] "
  285. 2750 PRINT"             [166]          [173][189] ":PRINT
  286. 2760 PL=PL(PT)
  287. 2770 PRINTTAB(20-LEN(PN$(PL))/2)"";PN$(PL)"[146]"
  288. 2780 PRINT:PRINT"IF ONE 'UTILITY IS OWNED PAY 4 TIMES THEAMOUNT SHOWN ON DICE"
  289. 2790 PRINT
  290. 2800 PRINT"IF BOTH OWNED PAY 10 [214] AMOUNT ON DICE"
  291. 2810 D1=INT(RND(1)*6)+1:D2=INT(RND(1)*6)+1
  292. 2820 IFDFTHEND1=R1:D2=R2
  293. 2830 PRINT:PRINT"MORTAGE VALUE  $75":PRINT
  294. 2840 IFMG(PL)=1THENPRINT"MORTAGED FOR $75":GOTO3000
  295. 2850 IFPS(42-PL)THENPRINTPN$(42-PL)" OWNED BY PLAYER"PS(42-PL):GOTO2870
  296. 2860 PRINTPN$(42-PL)" STILL FOR SALE."
  297. 2870 PRINT:IFPS(PL)THENPRINT"OWNED[146] BY PLAYER#";PS(PL):GOTO2950
  298. 2880 PRINT"YOU HAVE $"M(PT)
  299. 2890 INPUT"DO YOU WISH TO BUY IT  [191][157][157][157]";B$:B$=LEFT$(B$,1)
  300. 2900 IFB$="N"THENGOSUB6040:GOTO3000
  301. 2910 IFB$<>"Y"THENPRINT"[145][145]":GOTO2890
  302. 2920 PRINT"OK YOU BOUGHT ";PN$(PL)""
  303. 2930 M(PT)=M(PT)-150
  304. 2940 PS(PL)=PT:GOTO3000
  305. 2950 IFPS(PL)=PTTHEN3000
  306. 2960 PRINT"DICE SHOW"D1"AND"D2"."
  307. 2970 MT=4:IFPS(13)=PS(PL)ANDPS(29)=PS(PL)THENMT=10
  308. 2980 IFDF=0THENMT=10
  309. 2990 OW=MT*(D1+D2):PRINT"YOU OWE $";OW:M(PT)=M(PT)-OW:M(PS(PL))=M(PS(PL))+OW
  310. 3000 MT=0:GOSUB1730:RETURN
  311. 3010 PRINT"[147]"
  312. 3020 PRINT"                 [129]FREE
  313. 3030 [153]"                (null)LENLENLENLENLENRIGHT$"
  314. 3040 [153]"                PEEK OPENORTAN^ LEFT$
  315. 3050 PRINT"                [221] [159][173][192][189] [221]
  316. 3060 [153]"                LEFT$ VERIFY(null)LENRIGHT$ PEEK
  317. 3070 PRINT"              [213][192][189] [149][194][152][209][149][200] [173][192][201]
  318. 3080 [153]"              (null)   VERIFYMID$ASC(null)   (null)
  319. 3090 PRINT"              [173][192][152][168][192][192][192][192][192][152][168][192][189]
  320. 3100 [153]"                PRINT#SPC(     SPC(
  321. 3110 PRINT:PRINT"                [129]PARKING":PRINT
  322. 3120 IFPF=0THENGOSUB1730:RETURN
  323. 3130 PRINT:PRINT"       YOU GET THE FREE PARKING"
  324. 3140 PRINT"          JACKPOT OF $"FP"!":M(PT)=M(PT)+FP:FP=0:PRINT:GOSUB1730:RETURN
  325. 3150 PRINT"[147]";TAB(15);"GO TO JAIL"
  326. 3160 IFDB=3THENPRINT:PRINT" FOR ROLLING DOUBLES 3 TIMES IN A ROW!":PRINT
  327. 3170 PRINTTAB(16);"[151][176][178][178][178][178][178][178][174]":FORI=1TO5:PRINTTAB(16);"[221][221][221][221][221][221][221][221]":NEXT
  328. 3175 PRINTTAB(16);"[173][177][177][177][177][177][177][189]":PRINT:PL(PT)=41:JF=1:DB=0
  329. 3180 FORKO=1TO3:FORT=60TO110STEP1.7:FORI=1TO6:POKEG(I),T:NEXT:NEXT
  330. 3182 FORDL=1TO10:NEXT
  331. 3183 FORT=110TO60STEP-1.7:FORI=1TO6:POKEG(I),T:NEXT:NEXT:NEXT
  332. 3184 FORI=1TO6:POKEG(I),0:NEXT
  333. 3185 PRINT"";:GOSUB1730:RETURN
  334. 3190 PRINT"[147]";TAB(15);"LUXURY TAX":PRINT:PRINTTAB(16);"PAY $75"
  335. 3200 PRINT:PRINT:PRINT:M(PT)=M(PT)-75:FP=FP+75:GOSUB1730:RETURN
  336. 3210 PRINT"[147]";TAB(15);"INCOME TAX":PRINT:PRINTTAB(16);"PAY $200"
  337. 3220 PRINT:PRINT:PRINT:M(PT)=M(PT)-200:FP=FP+200:GOSUB1730:RETURN
  338. 3230 CC=CC+1:IFCC>16THENCC=CC-16
  339. 3240 PO=3-PT:CC$=CC$(CC):IFCC=1ANDCJ(1)THENCC=CC+1:CC$=CC$(CC)
  340. 3250 PRINT"[147]           [158]COMMUNITY CHEST":PRINTCC$""
  341. 3260 IFCC=1THENCJ(1)=PT
  342. 3270 IFCC=2THENGOSUB1730:GOTO3150
  343. 3280 IFCC=3THENPL(PT)=1:MF=1:GOSUB1730:GOSUB1700:RETURN
  344. 3290 IFCC=4THENM(PT)=M(PT)+45
  345. 3300 IFCC=5THENM(PT)=M(PT)+50:M(PO)=M(PO)-50
  346. 3310 IFCC=6THENM(PT)=M(PT)+25
  347. 3320 IFCC=7THENM(PT)=M(PT)-150:FP=FP+150
  348. 3330 IFCC=8THENM(PT)=M(PT)+20
  349. 3340 IFCC=9THENGOSUB3430
  350. 3350 IFCC=10THENM(PT)=M(PT)+10
  351. 3360 IFCC=11THENM(PT)=M(PT)+100
  352. 3370 IFCC=12THENM(PT)=M(PT)+100
  353. 3380 IFCC=13THENM(PT)=M(PT)-100
  354. 3390 IFCC=14THENM(PT)=M(PT)+200
  355. 3400 IFCC=15THENM(PT)=M(PT)-50
  356. 3410 IFCC=16THENM(PT)=M(PT)+100
  357. 3420 GOSUB1730:RETURN
  358. 3430 YP=0:FORI=1TO40
  359. 3440 IFPS(I)=(PT)ANDH(I)<5THENYP=YP+(40*H(I))
  360. 3450 IFPS(I)=(PT)ANDH(I)=5THENYP=YP+115
  361. 3460 NEXT:PRINT"YOU PAY $"YP:M(PT)=M(PT)-YP:FP=FP+YP:RETURN
  362. 3470 CH=CH+1:IFCH>16THENCH=CH-16
  363. 3480 PO=3-PT:CH$=CH$(CH):IFCH=8ANDCJ(2)THENCH=CH+1:CH$=CH$(CH)
  364. 3490 PRINT"[147]          [150]? ? CHANCE ? ?":PRINTCH$""
  365. 3500 IFCH=1THENM(PT)=M(PT)-15:FP=FP+15
  366. 3510 IFCH=2THENGOSUB1730:GOTO3150
  367. 3520 IFCH=3THENPL(PT)=1:MF=1:GOSUB1730:GOSUB1700:RETURN
  368. 3530 IFCH=4THENM(PT)=M(PT)+150
  369. 3540 IFCH=5THENGOSUB3670:MF=1
  370. 3550 IFCH=6THENGOSUB3710:MF=1
  371. 3560 IFCH=7THENM(PT)=M(PT)+50
  372. 3570 IFCH=8THENCJ(2)=PT
  373. 3580 IFCH=9THENM(PT)=M(PT)-50:M(PO)=M(PO)+50
  374. 3590 IFCH=10THENGOSUB3730:MF=1
  375. 3600 IFCH=11THENGOSUB3750:MF=1
  376. 3610 IFCH=12THENPL(PT)=PL(PT)-3:MF=1
  377. 3620 IFCH=13THENGOSUB3770:MF=1
  378. 3630 IFCH=14THENGOSUB3790
  379. 3640 IFCH=15THENGOSUB3670:MF=1
  380. 3650 IFCH=16THENGOSUB3830:MF=1
  381. 3660 GOSUB1730:RETURN
  382. 3670 PL(PT)=PL(PT)+1:IFPL(PT)>40THENGOSUB6540:PL(PT)=PL(PT)-40
  383. 3680 IFPT$(PL(PT))="RR"THEN3700
  384. 3690 GOTO3670
  385. 3700 DV=1:RETURN
  386. 3710 IFPL(PT)>25THENGOSUB6540
  387. 3720 PL(PT)=25:RETURN
  388. 3730 IFPL(PT)>12THENGOSUB6540
  389. 3740 PL(PT)=12:RETURN
  390. 3750 IFPL(PT)>6THENGOSUB6540
  391. 3760 PL(PT)=6:RETURN
  392. 3770 PL(PT)=40:RETURN
  393. 3780 RETURN
  394. 3790 DF=0:YP=0:FORI=1TO40
  395. 3800 IFPS(I)=(PT)ANDH(I)<5THENYP=YP+(25*H(I))
  396. 3810 IFPS(I)=(PT)ANDH(I)=5THENYP=YP+100
  397. 3820 NEXT:PRINT"YOU PAY $"YP:M(PT)=M(PT)-YP:FP=FP=YP:RETURN
  398. 3830 PL(PT)=PL(PT)+1
  399. 3840 IFPL(PT)>40THENGOSUB6540:PL(PT)=PL(PT)-40
  400. 3850 IFPT$(PL(PT))="U"THEN3870
  401. 3860 GOTO3830
  402. 3870 MF=1:RETURN
  403. 3880 PRINT"[147]"
  404. 3890 JT(PT)=JT(PT)+1
  405. 3900 PRINT"PLAYER #"PT"IS IN JAIL"
  406. 3910 PRINT:PRINT"YOU HAVE BEEN IN"JT(PT)"TURNS"
  407. 3920 PRINT"YOU MAY:  1.  PAY $50"
  408. 3930 PRINT"          2.  USE  A 'GET OUT OF JAIL                 FREE CARD."
  409. 3940 PRINT"          3.  TRY TO ROLL DOUBLES."
  410. 3950 PRINT:INPUT"CHOICE";I:IFI<1ORI>3THEN3950
  411. 3960 IFI=1THENM(PT)=M(PT)-50:FP=FP+50:PL(PT)=11:GOSUB1730:JE=1:RETURN
  412. 3970 IFI=2ANDCJ(1)=PTTHENCJ(1)=0:PL(PT)=11:GOSUB1730:JE=1:RETURN
  413. 3980 IFI=2ANDCJ(2)=PTTHENCJ(2)=0:PL(PT)=11:GOSUB1730:JE=1:RETURN
  414. 3990 IFI=2THENPRINT"YOU DON'T HAVE A CARD":GOTO3950
  415. 4000 IFI=3THENGOSUB1620:IFDBTHEN4060
  416. 4010 PRINT"YOU DIDN'T ROLL DOUBLES."
  417. 4020 IFJT(PT)>2THENPRINT"YOU MUST PAY THE $50":M(PT)=M(PT)-50:PL(PT)=11:JB=1
  418. 4030 IFJT(PT)>2THENGOSUB1730:FP=FP+50:RETURN
  419. 4040 GOSUB1730:RETURN
  420. 4050 IFPL(PT)=11THENGOSUB1730:JE=1:RETURN
  421. 4060 PRINT"YOU MADE IT OUT!!!":PL(PT)=11:GOSUB1730:JB=1:DB=0:RETURN
  422. 4070 GOTO6200
  423. 4080 PRINT"[147]":IFPFTHENPRINT"MONEY IN FREE PARKING JACKPOT $";FP
  424. 4090 PRINT"PLAYER 1 HAS $";M(1):PRINT"PLAYER 2 HAS $";M(2)
  425. 4100 PRINT:PRINT"PLAYER";PT"UP."
  426. 4110 PRINT:PRINT:PRINTTAB(15);"OPTIONS"
  427. 4120 PRINT
  428. 4130 PRINT"   R=REVIEW PROPERTIES"
  429. 4140 PRINT"   L=LIST ALL PROPERTIES"
  430. 4150 PRINT"   B=BUILD HOUSES/HOTELS"
  431. 4160 PRINT"   S=SELL PROPERTIES TO OTHER PLAYER"
  432. 4170 PRINT"   M=MORTAGE PROPERTIES(SELL HOUSES)"
  433. 4180 PRINT"   D=DISPLAY TITLE DEEDS"
  434. 4190 PRINT"   Q=RETURN TO GAME"
  435. 4200 PRINT"  XX=END GAME":PRINT
  436. 4210 INPUT"CHOICE  [191][157][157][157]";C$
  437. 4220 IFC$="[191]"THEN4210
  438. 4230 IFC$="R"THENGOSUB4320
  439. 4240 IFC$="L"THENGOSUB4490
  440. 4250 IFC$="B"THENGOSUB4640
  441. 4260 IFC$="S"THENGOSUB5080
  442. 4270 IFC$="M"THENGOSUB5440
  443. 4280 IFC$="D"THENGOSUB6510
  444. 4290 IFC$="Q"THENRETURN
  445. 4300 IFC$="XX"THEN6280
  446. 4310 GOTO4080
  447. 4320 INPUT"FOR WHICH PLAYER (1 OR 2)";PN
  448. 4330 IFPN<1ORPN>2THEN4320
  449. 4340 PRINT"[147]"
  450. 4350 PRINTTAB(6)"PROPERTIES FOR PLAYER ";PN
  451. 4360 PRINT
  452. 4370 FORI=1TO40:PO$="":IFPS(I)=PNTHENPRINTPN$(I);
  453. 4380 IFPS(I)<>PNTHEN4450
  454. 4390 IFPT$(I)<>"P"THEN4430
  455. 4400 PRINTSPC(20-(LEN(PN$(I))-2));" -";:IFH(I)<5THENPO$=STR$(H(I))+" HS"
  456. 4410 IFH(I)=5THENPO$=" HOTEL[146]"
  457. 4420 PO$=PO$+"/$"+MID$(STR$(P(I,H(I)+2)),2)
  458. 4430 IFMG(I)=1THENPO$="- MORTAGED"
  459. 4440 PRINTPO$
  460. 4450 NEXT
  461. 4460 PRINT:IFCJ(1)=PNORCJ(2)=PNTHENPRINT"GET OUT OF JAIL FREE CARD."
  462. 4470 PRINT"PLAYER"PN"HAS $";M(PN)
  463. 4480 PRINT:GOSUB1730:RETURN
  464. 4490 PRINT"[147]"
  465. 4500 TT$="NAME                            OWNER/[157][157][157][157][157][157]#HOUSES":PRINTTT$
  466. 4510 FORK=1TO40:IFPT$(K)<>"P"ANDPT$(K)<>"RR"ANDPT$(K)<>"U"THEN4600
  467. 4520 PRINTPN$(K)"";TAB(21);
  468. 4530 PRINTTAB(33)
  469. 4540 P$=STR$(PS(K)):PP$=MID$(STR$(H(K)),2):IFH(K)>4THENPP$="H"
  470. 4550 IFPT$(K)<>"P"THENPP$="X"
  471. 4560 IFMG(K)THENPP$="MG[146]"
  472. 4570 P$=P$+" -"+PP$
  473. 4580 IFPS(K)=0THENP$=" NONE"
  474. 4590 PRINTP$
  475. 4600 IFK=20THENPRINT:GOSUB1730:PRINT"[147]":PRINTTT$
  476. 4610 NEXTK
  477. 4620 PRINT:GOSUB1730
  478. 4630 RETURN
  479. 4640 PRINT"[147]"
  480. 4650 HO=0
  481. 4660 PRINT" ON WHICH GROUP":PRINTPG$
  482. 4670 PRINT
  483. 4680 INPUT"WHICH COLOR";C$
  484. 4690 FORI8=1TO41:IFC$=LEFT$(C$(I8),LEN(C$))THENPL=I8:C$=C$(I8):GOTO4720
  485. 4700 NEXTI8
  486. 4710 PRINT"ILLEGAL GROUP":GOTO4680
  487. 4720 P7=PT
  488. 4730 P5=P7:GOSUB2320:IFMGTHENOA=0
  489. 4740 IFOATHEN4770
  490. 4750 PRINT"SORRY YOU EITHER DON'T OWN ALL THE PROP-ERTY IN THAT GROUP OR SOME";
  491. 4760 PRINT" IS MORTAGED.":GOSUB1730:RETURN
  492. 4770 PRINT"   PROPERTY NAME    # OF HOUSES(5=HOTEL)"
  493. 4780 HS=0:FORI=PLTOPL+4:IFC$=C$(I)THENPRINTPN$(I)"";TAB(30);H(I):HS=HS+H(I)
  494. 4790 NEXT
  495. 4800 PRINT:PRINT"HOUSES FOR THIS GROUP COST $"P(PL,9)"EACH"
  496. 4810 PRINT"HOTELS COST $"P(PL,9)"+ 4 HOUSES OR $";(P(PL,9)*5)
  497. 4820 PRINT
  498. 4830 PRINT"YOU HAVE $"M(PT)
  499. 4840 PRINT"HOTELS AUTOMATICALLY ADDED AFTER 4TH    HOUSE"
  500. 4850 PRINT"HOW  MANY HOUSES DO YOU WANT TO BUY (MAX=";:MX=((5*PC)-HS):PRINTMX")"
  501. 4860 INPUTHN:IFHN>MXTHENGOTO4850
  502. 4870 H7=INT(HN/PC):H8=HN-(H7*PC)
  503. 4880 IFM(P7)<(HN*P(PL,9))THENPRINT"YOU DON'T HAVE ENOUGH MONEY!":GOTO4850
  504. 4890 IFHN=0THENPRINT"OK":GOSUB1730:RETURN
  505. 4900 M(P7)=M(P7)-(HN*P(PL,9)):FORE=PLTOPL+4:IFC$=C$(E)THENH(E)=H(E)+H7
  506. 4910 NEXT
  507. 4920 IFH8THEN4940
  508. 4930 GOTO5070
  509. 4940 PRINT"YOU HAVE"H8"HOUSES LEFT OVER"
  510. 4950 PRINT:F1=0:FORF=PLTOPL+4:IFC$=C$(F)THENF1=F1+1:PRINTF1,PN$(F);"  "H(F)
  511. 4960 NEXT:PRINT:FORG=1TOH8
  512. 4970 PRINT"WHERE DO YOU WANT HOUSE #"G;:INPUTHL:IFHL=HOTHENPRINT"CAN'T":GOTO4970
  513. 4980 F2=0:F1=0:F9=0
  514. 4990 FORF=PLTOPL+3:IFC$=C$(F)THENF1=F1+1:IFF1=HLTHENF9=F
  515. 5000 NEXTF
  516. 5010 IFF9=0THENPRINT"NO SUCH NUMBER":GOTO4970
  517. 5020 H2=0:FORF=PLTOPL+3:IFC$=C$(F)THENIFH(F9)>H(F)THENH2=H2+1
  518. 5030 NEXT
  519. 5040 IFH2THENPRINT"ILLEGAL DISTRIBUTION OF HOUSES!":GOTO4970
  520. 5050 HO=HL:H(F9)=H(F9)+1
  521. 5060 NEXTG
  522. 5070 PRINT"DONE":GOSUB1730:RETURN
  523. 5080 INPUT"WHAT PLAYER HAS A PROPERTY TO SELL";P1
  524. 5090 IFP1=0THENGOSUB1730:RETURN
  525. 5100 P2=P1+1:IFP2>2THENP2=P2-2
  526. 5110 PRINT"IS IT A PROPERTY";:INPUTQ$:IFLEFT$(Q$,1)="N"THEN5320
  527. 5120 PRINT"IN WHAT COLOR GROUP":PRINTPG$
  528. 5130 PRINT:INPUT"WHICH";C$
  529. 5140 FORI6=1TO41:IFC$=LEFT$(C$(I6),LEN(C$))THENPL=I6:C$=C$(I6):GOTO5170
  530. 5150 NEXTI6
  531. 5160 PRINT"ILLEGAL GROUP":GOTO5130
  532. 5170 PRINT"#  PROPERTY";TAB(30);"OWNER"
  533. 5180 HO=0:CT=0:FORI=PLTOPL+4:IFC$=C$(I)THENCT=CT+1:PRINTCT"   "PN$(I)"";TAB(35);PS(I)
  534. 5190 IFH(I)THENHO=1
  535. 5200 NEXT
  536. 5210 PRINT:PRINT"WHAT NUMBER DOES PLAYER"P1"WANT          TO SELL"
  537. 5220 INPUTTP
  538. 5230 CT=0:FORI=PLTOPL+4:IFC$=C$(I)THENCT=CT+1:IFCT=TPTHENT4=I:FF=1
  539. 5240 NEXT
  540. 5250 IFFF=0THENPRINT"ILLEGAL NUMBER":GOTO5210
  541. 5260 IFPS(T4)<>P1THENPRINT"PLAYER #"P1"DOES NOT OWN IT.":GOTO5080
  542. 5270 IFHOTHENPRINT"YOU HAVE HOUSES ON THAT GROUP YOU CAN'T SELL IT.":GOTO5310
  543. 5280 INPUT "WHAT IS THE AGREED SELLING PRICE";SP
  544. 5290 M(P1)=M(P1)+SP:M(P2)=M(P2)-SP:PS(T4)=P2
  545. 5300 PRINT"PLAYER #"P2"BOUGHT "PN$(T4)"":PRINT"FOR $"SP
  546. 5310 PRINT:GOSUB1730:RETURN
  547. 5320 PRINT"PROPERTY";TAB(30);"OWNER"
  548. 5330 FORI=6TO36STEP10:N=N+1:PRINTN"  "PN$(I)"";TAB(35);PS(I):NEXT:N=0
  549. 5340 PRINT" 5   "PN$(13)"";TAB(35);PS(13):PRINT" 6   "PN$(29)"";TAB(35);PS(29)
  550. 5350 INPUT"WHICH #";NM:IFNM=0THENRETURN
  551. 5360 IFNM<1ORNM>6THEN5350
  552. 5370 IFNM=5ANDPS(13)=P1THENSN=13:GOTO5410
  553. 5380 IFNM=6ANDPS(29)=P1THENSN=29:GOTO5410
  554. 5390 IFNM>0ANDNM<5THENSN=6+((NM-1)*10):IFPS(SN)=P1THENGOTO5410
  555. 5400 PRINT"YOU DON'T OWN IT.":GOTO5320
  556. 5410 INPUT"AGREED PRICE";SP
  557. 5420 M(P1)=M(P1)+SP:M(P2)=M(P2)-SP:PS(SN)=P2
  558. 5430 GOSUB1730:RETURN
  559. 5440 PRINT"[147]":PRINT"  OPTIONS":PRINT"0  RETURN TO MAIN MENU":PRINT"1  MORTAGE PROPERTY"
  560. 5450 PRINT"2  MORTAGE RAILROAD":PRINT"3  MORTAGE UTILITY"
  561. 5460 PRINT"4  LIFT MORTAGE(AT 10% INTEREST)":PRINT"5  SELL HOUSES":PRINT
  562. 5470 INPUT"CHOICE";GG:IFGG<0ORGG>5THEN5470
  563. 5480 IFGG=0THENGOSUB1730:RETURN
  564. 5490 ONGGGOSUB5510,5740,5830,5910,6550
  565. 5500 GOTO5440
  566. 5510 PRINT:PRINT"ON WHICH GROUP IS THE PROPERTY TO BE":PRINT"MORTAGED LOCATED?":PRINTPG$
  567. 5520 PRINT:INPUT"COLOR GROUP";C$
  568. 5530 FORI6=1TO41:IFC$=LEFT$(C$(I6),LEN(C$))THENPL=I6:C$=C$(I6):GOTO5560
  569. 5540 NEXTI6
  570. 5550 PRINT"ILLEGAL GROUP":GOTO5520
  571. 5560 CM=0:FORI=PLTOPL+3:IFC$=C$(I)THENCM=CM+H(I)
  572. 5570 NEXT
  573. 5580 IFCMTHENPRINT"CAN'T MORTAGE PROPERTIES WITH HOUSES    STILL ON THAT GROUP.":GOTO5730
  574. 5590 PRINT"#  PROPERTY";TAB(25);"OWNER"
  575. 5600 CT=0:FORI=PLTOPL+4:IFC$<>C$(I)THEN5630
  576. 5610 CT=CT+1:PRINTCT"   "PN$(I)"";TAB(27)PS(I);:PP$="":IFMG(I)THENPP$="MORTAGED"
  577. 5620 PRINTPP$
  578. 5630 NEXT
  579. 5640 PRINT:PRINT"WHAT NUMBER IS TO BE MORTAGED.";:INPUTTP
  580. 5650 IFTP=0THENGOSUB1730:RETURN
  581. 5660 CT=0:FORI=PLTOPL+4:IFC$=C$(I)THENCT=CT+1:IFCT=TPTHENT4=I:FF=1
  582. 5670 NEXT
  583. 5680 IFFF=0THENPRINT"ILLEGAL NUMBER":GOTO5640
  584. 5690 IFPS(T4)<>PTTHENPRINT"YOU DON'T OWN IT.":GOSUB1730:GOTO5440
  585. 5700 IFMG(T4)=1THENPRINT"ALREADY MORTAGED":GOTO5640
  586. 5710 PRINT:PRINT"OK":MG(T4)=1
  587. 5720 PRINT"YOU GOT $"P(T4,8)"FOR YOUR MORTAGE.":M(PT)=M(PT)+P(T4,8)
  588. 5730 GOSUB1730:RETURN
  589. 5740 RC=0:FORI=6TO36STEP10:IFPT$(I)="RR"THENRC=RC+1:PRINTRC"  "PN$(I)"     PLR.#"PS(I)
  590. 5750 NEXT
  591. 5760 INPUT"WHICH #";RG
  592. 5770 IFRG<1ORRG>4THEN5760
  593. 5780 RG=6+((RG-1)*10)
  594. 5790 IFPS(RG)<>PTTHENPRINT"YOU DON'T OWN IT.":GOSUB1730:GOTO5440
  595. 5800 IFMG(RG)=1THENPRINT"ALREADY MORTAGED.":GOSUB1730:GOTO5440
  596. 5810 MG(RG)=1:PRINT"YOU GET $100 FOR MORTAGE.":M(PT)=M(PT)+100
  597. 5820 GOSUB1730:RETURN
  598. 5830 U(1)=13:U(2)=29
  599. 5840 FORI=1TO2:PRINTI"  "PN$(U(I))"":NEXT
  600. 5850 INPUT"WHICH?";UM
  601. 5860 IFUM<1ORUM>2THEN5850
  602. 5870 IFPS(U(UM))<>PTTHENPRINT"YOU DON'T OWN IT.":GOSUB1730:GOTO5440
  603. 5880 IFMG(U(UM))=1THENPRINT"ALREADY MORTAGED.":GOSUB1730:GOTO5440
  604. 5890 MG(U(UM))=1:PRINT"YOU GET $75 FOR MORTAGE.":M(PT)=M(PT)+75
  605. 5900 GOSUB1730:RETURN
  606. 5910 PRINT:PRINT"THESE ARE THE PROPERTIES THAT ARE UNDER A MORTAGE."
  607. 5920 ML=0:FORI=1TO41:IFPS(I)=(PT)ANDMG(I)=1THENML=ML+1:PRINTML"  "PN$(I)""
  608. 5930 NEXT
  609. 5940 IFML=0THENPRINT"YOU HAVE NO MORTAGED PROPERTIES.":GOSUB1730:RETURN
  610. 5950 PRINT:INPUT"WHICH MORTAGE DO YOU WAN'T TO LIFT";LF
  611. 5960 IFLF<1ORLF>MLTHENPRINT"ILLEGAL":GOTO5950
  612. 5970 ML=0:FORI=1TO41:IFPS(I)=(PT)ANDMG(I)=1THENML=ML+1:IFML=LFTHENFT=I
  613. 5980 NEXT
  614. 5990 PRINT"THE MORTAGE IS FOR $"P(FT,8)
  615. 6000 PRINT"YOU MUST PAY $";:PY=P(FT,8)*1.10:PRINTPY
  616. 6010 IFPY>M(PT)THENPRINT"YOU DON'T HAVE THE MONEY.":GOSUB1730:RETURN
  617. 6020 M(PT)=M(PT)-PY:MG(FT)=0
  618. 6030 GOSUB1730:RETURN
  619. 6040 IFAFTHEN6060
  620. 6050 RETURN
  621. 6060 PL=PL(PT):PRINTPN$(PL)" WILL NOW BE AUCTIONED"
  622. 6070 PRINT"TO THE HIGHEST BIDDER"
  623. 6080 PO=3-PT:PRINT:HB=0:PA=PT:AC=0:PRINT:HB=0:PA=PT:AC=0
  624. 6090 PA=3-PA
  625. 6100 PRINT"PLAYER"PA"WHAT'S YOUR BID";:INPUTBD:BD=INT(BD):AC=AC+1
  626. 6110 IFBD=0THENON(AC>1)+2GOTO6140,6090
  627. 6120 IFBD<=HBTHENPRINT"YOU MUST BID HIGHER THAN"HB"OR BID '0'":GOTO6100
  628. 6130 HB=BD:HR=PA:GOTO6090
  629. 6140 IFHB=0THEN6190
  630. 6150 PRINTPN$(PL)" GOES TO"
  631. 6160 PRINT"PLAYER"HR" FOR $"HB
  632. 6170 M(HR)=M(HR)-HB:PS(PL)=HR
  633. 6180 RETURN
  634. 6190 PRINT:PRINTPN$(PL)" HAS NOT BEEN PURCHASED.":RETURN
  635. 6200 PRINT"[147]":PRINT"PLAYER #"PT"IS BROKE!!"
  636. 6210 PRINT"IF YOU CAN'T RAISE $"ABS(M(PT))"THEN YOU ARE OUT OF THE GAME."
  637. 6220 PRINT"DO NOT HIT 'Q' (RETURN TO GAME) UNTIL   YOU FINISH TRYING TO";
  638. 6230 PRINT" RAISE MONEY"
  639. 6240 GOSUB1730:GOSUB4080
  640. 6250 IFM(PT)>=0THENRETURN
  641. 6260 IFM(PT)<0THENPRINT"YOU ARE BANKRUPT!!!":PT=3-PT
  642. 6270 PRINT" --PLAYER #"PT"WINS!-- ":END
  643. 6280 PRINT"GAME OVER"
  644. 6290 PRINT"THE WINNER IS ";
  645. 6300 IFM(1)>M(2)THENPRINT"PLAYER #1 WITH $"M(1)
  646. 6310 IFM(2)>M(1)THENPRINT"PLAYER #2 WITH $"M(2)
  647. 6320 IF M(2)=M(1)THENPRINT"NEITHER,  IT'S A TIE!"
  648. 6330 PRINT"PLAYER 1 =  $";M(1)
  649. 6340 PRINT"PLAYER 2 =  $";M(2)
  650. 6350 PRINT
  651. 6360 POKE54296,0:FORI=1TO6:POKEG(I),0:END
  652. 6370 FORJ=832TO939
  653. 6380 READI:POKEJ,I:NEXT
  654. 6390 DATA 160,0,185,0,4,153,0,192,185,0,5,153,0,193,185,0,6,153,0
  655. 6400 DATA 194,185,0,7,153,0,195,185,0,216,153,0,196,185,0,217,153,0
  656. 6410 DATA 197,185,0,218,153,0,198,185
  657. 6420 DATA 0,219,153,0,199,200,208,205,96,160,0,185,0,192,153,0,4,185,0,193,153
  658. 6430 DATA 0,5,185,0,194,153,0,6,185,0,195,153,0,7,185,0,196,153,0,216,185,0,197
  659. 6440 DATA 153,0,217,185,0,198,153,0,218,185,0,199,153,0,219,200,208,205,96
  660. 6460 RETURN
  661. 6470 FORP4=1TO2
  662. 6480 Y$=""+PN$(PL(P4))+LEFT$("                ",18-(LEN(PN$(PL(P4)))-2))+"[146]"
  663. 6490 MN$="$"+MID$(STR$(M(P4)),2)+"    [146]":X=13:Y=2*P4+3:Z$=Y$:GOSUB1570
  664. 6500 Y=Y+1:Z$=MN$:GOSUB1570:NEXT:RETURN
  665. 6510 PRINT"DISPLAY DEEDS FOR WHICH COLOR GROUP:":PRINTPG$:INPUTC$:PRINT
  666. 6520 P3=PL:FORI=1TO41:IFC$=LEFT$(C$(I),LEN(C$))THENGF=1:PL=I:GOSUB1900:GF=0
  667. 6530 NEXT:PL=P3:RETURN
  668. 6540 M(PT)=M(PT)+200:PRINT"COLLECTED $200":RETURN
  669. 6550 PRINT"ON WHICH COLOR GROUP:":PRINTPG$:INPUTC$
  670. 6560 PL=0:FORI=41TO1STEP-1:IFC$=LEFT$(C$(I),LEN(C$))THENPL=I:C$=C$(I)
  671. 6570 NEXTI:IFPLTHEN6590
  672. 6580 PRINT"ILLEGAL GROUP":GOTO6550
  673. 6590 DO=0:HN=0:FORI=PLTOPL+3:IFPS(I)<>(PT)ANDC$=C$(I)THENDO=1
  674. 6600 IFC$=C$(I)THENHN=HN+H(I)
  675. 6610 NEXT
  676. 6620 IFDO=1ORHN=0THENPRINT"YOU DON'T OWN HOUSES ON THESE PROPERTIES":GOSUB1730:RETURN
  677. 6630 PRINT"#  PROPERTY";TAB(25);"HOUSES(5=HOTEL)"
  678. 6640 CT=0:FORI=PLTOPL+3:IFC$=C$(I)THENCT=CT+1:PRINTCT"   "PN$(I)"";TAB(27)H(I)
  679. 6650 NEXT
  680. 6660 INPUT"WANT TO REMOVE ALL THESE HOUSES";A$:IFLEFT$(A$,1)="Y"THEN6800
  681. 6670 PRINT:INPUT"WHAT # TO REMOVE A HOUSE FROM.";TP
  682. 6680 IFTP=0THEN RETURN
  683. 6690 CT=0:FORI=PLTOPL+3:IFC$=C$(I)THENCT=CT+1:IFCT=TPTHENT4=I:FF=1
  684. 6700 NEXT
  685. 6710 IFFF=0THENPRINT"ILLEGAL NUMBER":GOTO6670
  686. 6720 IFH(T4)=0THENPRINT"NO HOUSES THERE.":GOTO6670
  687. 6730 NN=0:NH=H(T4):FORI=PLTOPL+3:IFH(I)>NHTHENNN=1
  688. 6740 NEXT
  689. 6750 IFNNTHENPRINT"YOU CAN'T REMOVE THAT HOUSE.":GOTO6670
  690. 6760 PRINT:PRINT"OK.":H(T4)=H(T4)-1
  691. 6770 HM=P(PL,9)/2
  692. 6780 PRINT"YOU GOT $"HM"FOR YOUR HOUSE":M(PT)=M(PT)+HM
  693. 6790 GOSUB1730:GOTO5440
  694. 6800 HM=0:FORI=PLTOPL+3:IFC$=C$(I)THENHM=HM+(P(PL,9)/2)*H(I):H(I)=0
  695. 6810 NEXT:PRINT"YOU GOT $"HM"FOR YOUR HOUSES":M(PT)=M(PT)+HM:GOTO6790
  696.